#pragma once

#include "imconfig.h"
#include "imgui.h"
#include "imgui_impl_dx11.h"
#include "imgui_impl_win32.h"
#include "imgui_internal.h"
#include "imstb_rectpack.h"
#include "imstb_textedit.h"
#include "imstb_truetype.h"
#include "Font.h"

#include <Windows.h>
#include <d3d11.h>
#pragma comment(lib,"d3d11.lib")

// 项目专用函数库
#include "UI_SetUI.h"





// 获取屏幕刷新率
int GetRefreshRateAPI() {
    DEVMODE devMode = { 0 };
    devMode.dmSize = sizeof(DEVMODE);

    // 获取当前显示设置
    if (EnumDisplaySettings(NULL, ENUM_CURRENT_SETTINGS, &devMode))
        return devMode.dmDisplayFrequency;
    return 60;
}


// 屏幕缩放率
// 返回主显示器缩放比例
float GetScreenScalingRatio() {
    HDC hdc = GetDC(nullptr);  // 获取主显示器设备上下文[4](@ref)
    int dpi = GetDeviceCaps(hdc, LOGPIXELSX);  // 获取水平逻辑DPI值[2,4](@ref)
    ReleaseDC(nullptr, hdc);  // 释放设备上下文[2](@ref)
    return static_cast<float>(dpi) / 96.0f;  // 计算缩放比例（96为标准DPI基准值）[4](@ref)
}